0 REM *** REDIRECT C-64 *** 10 FORJ=49152TO49240:READA:POKEJ,A:NEXTJ 20 PRINTCHR$(147)TAB(16)CHR$(18)"REDIRECT" 30 L$=" --------------------------------------" 40 J=0:S=1:N$="":PRINT:PRINT"FILE NAME? ";:PRINTCHR$(34); 50 POKE204,0:GETA$:IFA$=""THEN50 60 IFA$=CHR$(13)THENPOKE204,1:PRINTCHR$(34)A$:GOTO120 70 IFJ>15THENPOKE204,1:PRINTA$:GOTO110 80 IFA$=CHR$(20)ANDJ<1THEN50 90 PRINTA$;:IFA$=CHR$(20)THENJ=J-1:N$=LEFT$(N$,J):GOTO50 100 N$=N$+A$:J=J+1:GOTO50 110 PRINT:PRINTCHR$(18)"YOU ARE OVER THE 16 CHARACTER LIMIT.":GOTO40 120 IFN$=""THENPRINTCHR$(18)"PLEASE ENTER A FILE NAME.":GOTO40 130 IFN$="$"THENSYS49152:POKE198,0:GOSUB470:CLOSE15:PRINTL$:GOTO40 140 R$=CHR$(34)+N$+CHR$(34) 150 PRINT"SEARCHING FOR ";R$ 160 IFLEN(N$)<16THENN$=N$+CHR$(160):GOTO160 170 OPEN15,8,15:OPEN5,8,5,"#" 180 PRINT#15,"U1";5;0;18;S:GOSUB480:L=4 190 B$="":J=1 200 PRINT#15,"B-P";5;J+L:GET#5,A$:IFA$=""THENA$=CHR$(0) 210 B$=B$+A$:IFLEFT$(B$,J)<>LEFT$(N$,J)THEN240 220 J=J+1:IFJ>16THEN290 230 GOTO200 240 L=L+32:IFL<229THEN190 250 FORP=0TO1:PRINT#15,"B-P";5;P:GET#5,A$:IFA$=""THENA$=CHR$(0) 260 A(P)=ASC(A$):NEXTP:IFA(0)<>18ORA(1)<1ORA(1)>18THEN280 270 S=A(1):GOTO180 280 PRINT:PRINT"UNABLE TO LOCATE ";R$:GOTO390 290 GOSUB440:PRINT:PRINTL$:IFCT=1THEN310 300 F1$=F2$:S1=S:L1=L:CT=1:CLOSE5:CLOSE15:GOTO40 310 PRINT"SWAPPING...":PRINTL$ 320 PRINT#15,"U1";5;0;18;S:GOSUB480 330 PRINT#15,"B-P";5;L:PRINT#5,F1$; 340 PRINT#15,"U2";5;0;18;S:GOSUB480 350 PRINT#15,"U1";5;0;18;S1:GOSUB480 360 PRINT#15,"B-P";5;L1:PRINT#5,F2$; 370 PRINT#15,"U2";5;0;18;S1:GOSUB480 380 PRINT"DONE..." 390 CLOSE5:CLOSE15:PRINTL$:PRINT 400 INPUT"ANOTHER SWAP (Y/N/$)";A$:IFA$="Y"THENCLR:GOTO20 410 IFA$="N"THENEND 420 IFA$="$"THENSYS49152:POKE198,0:GOSUB470:CLOSE15:PRINTL$:PRINT 430 GOTO400 440 F2$="":L=L-2:FORJ=0TO29 450 PRINT#15,"B-P";5;J+L:GET#5,A$:IFA$=""THENA$=CHR$(0) 460 F2$=F2$+A$:NEXTJ:RETURN 470 OPEN15,8,15 480 INPUT#15,EN,EM$,ET,ES:IFEN=0THENRETURN 490 PRINTEN;EM$;ET;ES:CLOSE5:CLOSE15:END 500 DATA32,68,229,169,36,133,251,169,5,162,8,160 510 DATA0,32,186,255,169,1,162,251,160,0,32,189 520 DATA255,32,192,255,162,5,32,198,255,32,207,255 530 DATA32,207,255,32,207,255,32,207,255,32,207,255 540 DATA72,32,207,255,168,104,170,165,144,208,22,152 550 DATA32,205,189,169,32,32,210,255,32,207,255,208 560 DATA248,169,13,32,210,255,184,80,214,32,204,255 570 DATA169,5,76,195,255